import {defineStore} from "pinia";
import axios from "axios";//引入axios
import {reactive} from "vue";
import {nanoid} from "nanoid";//引入类似uuid
//id +配置对象
//分别暴露
// export const  useTalkStore=defineStore('talk',{
//     actions:{
//      async getATalk(){
//              let {data:{content:title}}=await axios.get('https://api.uomg.com/api/rand.qinghua?format=json')
//   //请求回来的字符串包装成一个对象
//   let obj={id:nanoid(),title}
//   //放到数组中
//   this.talkList.unshift(obj)
//   // console.log(obj)
//         }
//     },
//     //存储数据的地方
//     state(){
//         return{
//             //本地缓存 存在本地 字符串形式
//             talkList:JSON.parse(localStorage.getItem('talkList') as string)||[]
//         };
//     }
// })
//以对象方式不写选项
export const  useTalkStore=defineStore('talk',()=>{

    //选项式写法
const  talkList=reactive(JSON.parse(localStorage.getItem('talkList') as string)||[])
    //getATalk 函数等于action
    async  function getATalk(){
        let {data:{content:title}}=await axios.get('https://api.uomg.com/api/rand.qinghua?format=json')
  //请求回来的字符串包装成一个对象
  let obj={id:nanoid(),title}
  //放到数组中
  this.talkList.unshift(obj)
    }
    return {talkList,getATalk}

})